package com.UnionPayCenter.entity;

import java.sql.Timestamp;

import javax.persistence.Column;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import com.fasterxml.jackson.annotation.JsonIgnore;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @program: UnionPayCenter
 * @description: 用户优惠券信息
 * @author BaoJF
 *
 */
@EqualsAndHashCode(callSuper = false)
@Data
@Table(name = "discount_coupon")
public class UserCouponEntity {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @ApiModelProperty(value = "主键")
    @Column(name = "id")
    private Integer id;
    
    @ApiModelProperty(value = "用户id")
    @Column(name = "user_id")
    private Integer userId;
    
    @ApiModelProperty(value = "优惠券id")
    @Column(name = "dis_id")
    private String disId;
    
    @ApiModelProperty(value = "优惠券类型id")
    @Column(name = "dis_type_id")
    private Integer disTypeId;
    
    @ApiModelProperty(value = "是否限制使用次数:01若有,则一次性使用;00若无,则无限使用")
    @Column(name = "limit_used")
    private String LimitUsed;
    
    @ApiModelProperty(value = "剩余使用次数")
    @Column(name = "used_count")
    private Integer usedCount;
    
    @ApiModelProperty(value = "优惠券状态: 00可使用,01已使用,02过期")
    @Column(name = "dis_st")
    private String disSt;
    
    @ApiModelProperty(value = "使用时间")
    @Column(name = "used_time")
    private String usedTime;
    
    @ApiModelProperty(value = "生效时间")
    @Column(name = "effective_time")
    private String effectiveTime;
    
    @ApiModelProperty(value = "领取时间")
    @Column(name = "get_time")
    private String getTime;
    
    @ApiModelProperty(value = "使用截至时间")
    @Column(name = "end_time")
    private String endTime;
    
    @ApiModelProperty(value = "添加时间")
    @Column(name = "create_time")
    private Timestamp createTime;

    @JsonIgnore
    @ApiModelProperty(value = "修改时间")
    @Column(name = "update_time")
    private Timestamp updateTime;
    
    @ApiModelProperty(value = "备注")
    @Column(name = "remark")
    private String remark;

    @ApiModelProperty(value = "停启标志 1启用 0 停用")
    @Column(name = "valid_tag")
    private String validTag;
    
}
